// 专门存放 购物车中的数据
export default {
  // 开启命名空间
  namespaced: true,
  state: {
	  test: '我是测试数据',
	      // 购物车中的数据源
	        cart: uni.getStorageSync('cart') || []
  },
  mutations: {
	  // 将商品信息添加到购物车中
	      //  goodsObj:
	      //    goods_id：商品 id
	      //    goods_name: 商品名称
	      //    goods_price: 商品价格
	      //    goods_small_logo: 商品图片
	      //    goods_count: 商品数量
	      //    goods_status：商品状态
	      addToCart(state, goodsObj) {
	        // 判断 goodsObj 在 cart 中是否存在
	        //   不存在：直接将 goodsObj 添加到 cart 中
	        //   存在：从 cart 中找到 goodsObj 对应的对象，将 goods_count + 1
	        let obj = state.cart.find(item => item.goods_id === goodsObj.goods_id)
	        if (!obj) {
	          state.cart.push(goodsObj)
	        } else {
	          obj.goods_count += 1
	        }
			// 将商品保存到本地
			  uni.setStorageSync('cart', state.cart)
	      }
  },
  actions: {},
  getters: {
	  // 购物车中商品的总数量
	    total(state) {
	      // 得到购物车中商品的总数量
	      return state.cart.reduce((sum, item) => {
	        return sum += item.goods_count
	      }, 0)
	    }
  }
}
